﻿using System;
namespace SobrietyEngine.Games
{
    public interface ISobrietyGameServices
    {
        SobrietyEngine.Actor.ActorGameService ActorGameService { get; }
        SobrietyEngine.Assets.IAssetGameService AssetGameService { get; }
        SobrietyEngine.Events.EventRouterGameService EventRouterService { get; }

        Microsoft.Xna.Framework.Graphics.Viewport FullscreenViewport { get; }
        Microsoft.Xna.Framework.GraphicsDeviceManager GraphicDM { get; }
        //Microsoft.Xna.Framework.IGraphicsDeviceManager GraphicDM { get; }

        SobrietyEngine.Guids.GuidGameService GuidGameService { get; }
        SobrietyEngine.Input.InputGameService InputGameComponent { get; }
        SobrietyEngine.Physics.FarseerPhysicsService PhysicsGameService { get; }
        SobrietyEngine.PlayerData.PlayerGameService PlayerGameService { get; }
        SobrietyEngine.Scene.SceneGameService SceneGameService { get; }
        SobrietyEngine.Screens.ScreenManager ScreenGameService { get; }
        SobrietyEngine.Sound.SoundGameService SoundGameService { get; }
        SobrietyEngine.Assets.Textures.ITextureManagerGameService TextureGameService { get; }
        SobrietyEngine.User.IUserGameService UserGameService { get; }
    }
}
